home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / nqt_xss.nasl < prev    next >
Text File  |  2005-03-31  |  2KB  |  74 lines

  1. #
  2. # Script by Noam Rathaus
  3. #
  4. # From: Janek Vind <come2waraxe@yahoo.com>
  5. # Subject: [waraxe-2004-SA#024 - XSS and full path disclosure in Network Query Tool 1.6]
  6. # Date: 2004-04-24 04:20
  7.  
  8. if(description)
  9. {
  10.  script_id(12223);
  11.  script_version ("$Revision: 1.4 $"); 
  12.  name["english"] = "Network Query Tool XSS";
  13.  
  14.  script_name(english:name["english"]);
  15.  
  16.  desc["english"] = "
  17. The remote host is using Network Query Tool. There is a bug in this 
  18. software that makes it vulnerable to cross site scripting attacks.
  19.  
  20. An attacker may use this bug to steal the credentials of the legitimate 
  21. users of this site.
  22.  
  23. Risk factor : Medium";
  24.  
  25.  script_description(english:desc["english"]);
  26.  
  27.  summary["english"] = "Checks for the presence of an XSS bug in NQT";
  28.  
  29.  script_summary(english:summary["english"]);
  30.  
  31.  script_category(ACT_GATHER_INFO);
  32.  
  33.  script_copyright(english:"This script is Copyright (C) 2004 Noam Rathaus");
  34.  family["english"] = "CGI abuses : XSS";
  35.  script_family(english:family["english"]);
  36.  script_dependencie("find_service.nes", "cross_site_scripting.nasl", "http_version.nasl");
  37.  script_require_ports("Services/www", 80);
  38.  exit(0);
  39. }
  40.  
  41. #
  42. # The script code starts here
  43. #
  44.  
  45. function check(loc)
  46. {
  47.  req = http_get(item:string(loc, "/nqt.php?target=127.0.0.1&queryType=all&portNum=foobar%3Cscript%3Efoo%3C/script%3E"),
  48.                 port:port);
  49.  r = http_keepalive_send_recv(port:port, data:req, bodyonly:1);
  50.  if( r == NULL )exit(0);
  51.  if(egrep(pattern:"<script>foo</script>", string:r))
  52.  {
  53.         security_warning(port);
  54.         exit(0);
  55.  }
  56. }
  57.  
  58.  
  59. include("http_func.inc");
  60. include("http_keepalive.inc");
  61.  
  62. port = get_http_port(default:80);
  63.  
  64. if(!get_port_state(port))exit(0);
  65. if(!can_host_php(port:port))exit(0);
  66. if (  get_kb_item(string("www/", port, "/generic_xss")) ) exit(0);
  67.  
  68. check(loc:"/nqt");
  69. foreach dir (cgi_dirs())
  70. {
  71.  check(loc:dir);
  72. }
  73.  
  74.